home *** CD-ROM | disk | FTP | other *** search
/ The Game Master (3rd Edition) / The Game Master 3rd edition.iso / files / hobbbies / orgami / boxes.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1985-02-21  |  23.5 KB  |  1,108 lines

  1. 10  SCREEN 1,0:COLOR 8,0: KEY OFF: CLS
  2. 15  DEF FNCEN$(V$,X)=SPACE$((X-LEN(V$))/2)+V$
  3. 20  LOCATE 12,1:PRINT FNCEN$("TWO BOXES",40)
  4. 25  PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT
  5. 30  PRINT FNCEN$("(C) COPYRIGHT 1985 George Furiya",40)
  6. 35  PRINT FNCEN$("All Rights Reserved",40)
  7. 40  FOR K=1 TO 2500:NEXT K
  8. 45  CLS
  9. 50                             '***Zapsound***
  10. 55  FOR A=0 TO 20
  11. 60  OUT 66,A:OUT 66,A
  12. 65  OUT 97,(INP(97) OR 3)
  13. 70  NEXT A
  14. 75  SOUND 37,0
  15. 80  FOR K=1 TO 250:NEXT K
  16. 85                              '***End Zapsound***
  17. 90              '*** start draw ***
  18. 95  LINE(160,30)-(80,100)
  19. 100  LINE-(160,170)
  20. 105  LINE-(240,100)
  21. 110  LINE-(160,30)
  22. 115  FOR K=1 TO 750:NEXT K
  23. 120  GOSUB 30000   '*** <Textpad> ***
  24. 125  PRINT FNCEN$("We begin with two folds",40)
  25. 130  FOR K=1 TO 1500:NEXT K
  26. 135  GOSUB 30000   '*** <Textpad> ***
  27. 140  PRINT FNCEN$("which generate these creases.",40)
  28. 145  FOR K=1 TO 750:NEXT K
  29. 150  FOR V=30 TO 170 STEP 2
  30. 155  PSET(160,V)
  31. 160  NEXT V
  32. 165  FOR K=1 TO 750:NEXT K
  33. 170  FOR H=80 TO 240 STEP 2
  34. 175  PSET(H,100)
  35. 180  NEXT H
  36. 185  FOR K=1 TO 750:NEXT K
  37. 190  GOSUB 30000   '*** <Textpad> ***
  38. 195  PRINT FNCEN$("Standard folds.  Your turn.  I'll wait.",40)
  39. 200  FOR K=1 TO 1500:NEXT K
  40. 205  GOSUB 30000   '*** Textpad ***
  41. 210  PRINT FNCEN$("Press <C> to continue.",40)
  42. 215  A$=INKEY$:IF A$="" GOTO 215
  43. 220  IF A$="C" OR A$="c" GOTO 230
  44. 225  GOTO 205
  45. 230  'LINE(160,31)-(160,169),0
  46. 235  'LINE(81,100)-(239,100),0
  47. 240  GOSUB 30000   '*** <Textpad> ***
  48. 245  PRINT FNCEN$("Our next folds are a set of three",40)
  49. 250  FOR K=1 TO 1500:NEXT K
  50. 255  PRINT FNCEN$("which apply to all four of our corners.",40)
  51. 260  FOR K=1 TO 1500:NEXT K
  52. 265  GOSUB 30000   '*** <Textpad> ***
  53. 270  PRINT FNCEN$("The first fold takes this corner",40)
  54. 275  FOR K=1 TO 750:NEXT K
  55. 280  FOR K=1 TO 15
  56. 285  PSET(160,178):DRAW"G5R4D7R2U7R4H5"
  57. 290  PAINT(160,184)
  58. 295  FOR M=1 TO 25:NEXT M
  59. 300  CIRCLE(160,184),7,0
  60. 305  PAINT(160,184),0
  61. 310  NEXT K
  62. 315  FOR K=1 TO 750:NEXT K
  63. 320  GOSUB 30000   '*** <Textpad> ***
  64. 325  PRINT FNCEN$("up to this center point",40)
  65. 330  FOR K=1 TO 750:NEXT K
  66. 335  FOR K=1 TO 15
  67. 340  CIRCLE(160,100),5
  68. 345  LINE(158,100)-(162,100)
  69. 350  LINE(160,98)-(160,102)
  70. 355  FOR M=1 TO 25:NEXT M
  71. 360  CIRCLE(160,100),5,0
  72. 365  LINE(158,100)-(162,100),0
  73. 370  LINE(160,98)-(160,102),0
  74. 375  NEXT K
  75. 380  FOR V=90 TO 110 STEP 2
  76. 385  PSET(160,V)
  77. 390  NEXT V
  78. 395  FOR H=150 TO 170 STEP 2
  79. 400  PSET(H,100)
  80. 405  NEXT H
  81. 410  FOR K=1 TO 750:NEXT K
  82. 415  GOSUB 30000   '*** <Textpad> ***
  83. 420  PRINT FNCEN$("across this line,",40)
  84. 425  FOR K=1 TO 750:NEXT K
  85. 430  FOR H=120 TO 200 STEP 2
  86. 435  PSET(H,135)
  87. 440  NEXT H
  88. 445  FOR K=1 TO 750:NEXT K
  89. 450  GOSUB 30000   '*** <Textpad> ***
  90. 455  PRINT FNCEN$("SO!",40)
  91. 460  FOR K=1 TO 750:NEXT K
  92. 465  FOR V=170 TO 135 STEP -1
  93. 470  LINE(120,135)-(160,V)
  94. 475  LINE-(200,135)
  95. 480  LINE(120,135)-(160,V),0
  96. 485  LINE-(200,135),0
  97. 490  NEXT V
  98. 495  FOR V=135 TO 100 STEP -1
  99. 500  LINE(120,135)-(160,V)
  100. 505  LINE-(200,135)
  101. 510  NEXT V
  102. 515  FOR K=1 TO 750:NEXT K
  103. 520  GOSUB 30000   '*** <Textpad> ***
  104. 525  PRINT FNCEN$("and return.",40)
  105. 530  FOR K=1 TO 750:NEXT K
  106. 535  PSET(160,100)
  107. 540  FOR V=100 TO 135 STEP 2
  108. 545  LINE(120,135)-(160,V)
  109. 550  LINE-(200,135)
  110. 555  LINE(120,135)-(160,V+1),0
  111. 560  LINE-(200,135),0
  112. 565  LINE(120,135)-(160,V),0
  113. 570  LINE-(200,135),0
  114. 575  PSET(160,V)
  115. 580  NEXT V
  116. 585  FOR H=120 TO 200 STEP 2
  117. 590  PSET(H,135)
  118. 595  NEXT H
  119. 600  FOR V=140 TO 170 STEP 2
  120. 605  LINE(120,135)-(160,V)
  121. 610  LINE-(200,135)
  122. 615  LINE(120,135)-(160,V),0
  123. 620  LINE-(200,135),0
  124. 625  PSET(160,V)
  125. 630  PSET(160,136):PSET(160,138)
  126. 635  NEXT V
  127. 640  LINE(120,135)-(160,170)
  128. 645  LINE-(200,135)
  129. 650  FOR H=120 TO 200 STEP 2
  130. 655  PSET(H,135)
  131. 660  NEXT H
  132. 665  LINE-(200,135)
  133. 670  FOR K=1 TO 750:NEXT K
  134. 675  GOSUB 30000   '*** Textpad ***
  135. 680  PRINT FNCEN$("Press <C> to continue.",40)
  136. 685  A$=INKEY$:IF A$="" GOTO 685
  137. 690  IF A$="C" OR A$="c" GOTO 700
  138. 695  GOTO 675
  139. 700  GOSUB 30000   '*** <Textpad> ***
  140. 705  PRINT FNCEN$("The second fold takes this corner again",40)
  141. 710  FOR K=1 TO 750:NEXT K
  142. 715  FOR K=1 TO 15
  143. 720  PSET(160,178):DRAW"G5R4D7R2U7R4H5"
  144. 725  PAINT(160,184)
  145. 730  FOR M=1 TO 25:NEXT M
  146. 735  CIRCLE(160,184),7,0
  147. 740  PAINT(160,184),0
  148. 745  NEXT K
  149. 750  FOR K=1 TO 750:NEXT K
  150. 755  GOSUB 30000   '*** <Textpad> ***
  151. 760  PRINT FNCEN$("this time up to this point",40)
  152. 765  FOR K=1 TO 750:NEXT K
  153. 770  FOR K=1 TO 15
  154. 775  CIRCLE(160,135),5
  155. 780  LINE(158,135)-(162,135)
  156. 785  LINE(160,133)-(160,137)
  157. 790  FOR M=1 TO 25:NEXT M
  158. 795  CIRCLE(160,135),5,0
  159. 800  LINE(158,135)-(162,135),0
  160. 805  LINE(160,133)-(160,137),0
  161. 810  NEXT K
  162. 815  FOR H=150 TO 170 STEP 2
  163. 820  PSET(H,135)
  164. 825  NEXT H
  165. 830  PSET(160,134):PSET(160,136)
  166. 835  FOR K=1 TO 750:NEXT K
  167. 840  GOSUB 30000   '*** <Textpad> ***
  168. 845  PRINT FNCEN$("across this line,",40)
  169. 850  FOR K=1 TO 750:NEXT K
  170. 855  FOR H=140 TO 180 STEP 2
  171. 860  PSET(H,153)
  172. 865  NEXT H
  173. 870  FOR K=1 TO 750:NEXT K
  174. 875  GOSUB 30000   '*** <Textpad> ***
  175. 880  PRINT FNCEN$("SO!",40)
  176. 885  FOR K=1 TO 750:NEXT K
  177. 890  FOR V=170 TO 153 STEP -1
  178. 895  LINE(140,153)-(160,V)
  179. 900  LINE-(180,153)
  180. 905  LINE(140,153)-(160,V),0
  181. 910  LINE-(180,153),0
  182. 915  NEXT V
  183. 920  FOR V=153 TO 135 STEP -1
  184. 925  LINE(140,153)-(160,V)
  185. 930  LINE-(180,153)
  186. 935  NEXT V
  187. 940  FOR K=1 TO 750:NEXT K
  188. 945  GOSUB 30000   '*** Textpad ***
  189. 950  PRINT FNCEN$("Press <C> to continue.",40)
  190. 955  A$=INKEY$:IF A$="" GOTO 955
  191. 960  IF A$="C" OR A$="c" GOTO 970
  192. 965  GOTO 945
  193. 970  GOSUB 30000   '*** <Textpad> ***
  194. 975  PRINT FNCEN$("The final fold of our set",40)
  195. 980  FOR K=1 TO 1500:NEXT K
  196. 985  GOSUB 30000   '*** <Textpad> ***
  197. 990  PRINT FNCEN$("continues our second fold on up,",40)
  198. 995  FOR K=1 TO 1500:NEXT K
  199. 1000  GOSUB 30000   '*** <Textpad> ***
  200. 1005  PRINT FNCEN$("SO!",40)
  201. 1010  FOR K=1 TO 750:NEXT K
  202. 1015  FOR V=153 TO 135 STEP -1
  203. 1020  LINE(120,135)-(140,V)
  204. 1025  LINE-(180,V)
  205. 1030  LINE-(200,135)
  206. 1035  LINE(120,135)-(140,V),0
  207. 1040  LINE-(180,V),0
  208. 1045  LINE-(200,135),0
  209. 1050  NEXT V
  210. 1055  FOR V=135 TO 118 STEP -1
  211. 1060  LINE(120,135)-(140,V)
  212. 1065  LINE-(180,V)
  213. 1070  LINE-(200,135)
  214. 1075  NEXT V
  215. 1080  FOR K=1 TO 750:NEXT K
  216. 1085  GOSUB 30000
  217. 1090  PRINT FNCEN$("To review those folds, press <R>.",40)
  218. 1095  FOR K=1 TO 1000:NEXT K
  219. 1100  PRINT FNCEN$("Press <C> to continue.",40)
  220. 1105  A$=INKEY$:IF A$="" GOTO 1105
  221. 1110  IF A$="r" OR A$="R" GOTO 1125
  222. 1115  IF A$="c" OR A$="C" GOTO 1220
  223. 1120  GOTO 1085
  224. 1125  FOR A=0 TO 20
  225. 1130  OUT 66,A:OUT 66,A
  226. 1135  OUT 97,(INP(97) OR 3)
  227. 1140  NEXT A
  228. 1145  SOUND 37,0
  229. 1150  LINE(120,135)-(140,118),0
  230. 1155  LINE-(180,118),0
  231. 1160  LINE-(200,135),0
  232. 1165  LINE-(120,135),0
  233. 1170  PAINT(160,125),0
  234. 1175  LINE(120,135)-(160,170)
  235. 1180  LINE-(200,135)
  236. 1185  FOR V=100 TO 170 STEP 2
  237. 1190  PSET(160,V)
  238. 1195  NEXT V
  239. 1200  GOSUB 30000
  240. 1205  PRINT FNCEN$("* Review *",40)
  241. 1210  FOR K=1 TO 1500:NEXT K
  242. 1215  GOTO 240
  243. 1220  GOSUB 30000   '*** <Textpad> ***
  244. 1225  PRINT FNCEN$("We now proceed to execute",40)
  245. 1230  FOR K=1 TO 1500:NEXT K
  246. 1235  PRINT FNCEN$("that set of folds on our other corners.",40)
  247. 1240  FOR K=1 TO 1500:NEXT K
  248. 1245  LINE(80,80)-(100,125),0,BF
  249. 1250  LINE(100,83)-(100,118)
  250. 1255  LINE-(120,100)
  251. 1260  LINE-(100,83)
  252. 1265  PAINT(110,99)
  253. 1270  FOR K=1 TO 750:NEXT K
  254. 1275  LINE(100,65)-(120,135),0,BF
  255. 1280  LINE(120,65)-(120,135)
  256. 1285  LINE-(140,118)
  257. 1290  LINE-(140,83)
  258. 1295  LINE-(120,65)
  259. 1300  PAINT(130,99)
  260. 1305  LINE(120,135)-(140,118),0
  261. 1310  FOR K=1 TO 750:NEXT K
  262. 1315  LINE(220,80)-(240,125),0,BF
  263. 1320  LINE(220,83)-(220,118)
  264. 1325  LINE-(200,100)
  265. 1330  LINE-(220,83)
  266. 1335  PAINT(210,99)
  267. 1340  FOR K=1 TO 750:NEXT K
  268. 1345  LINE(220,65)-(200,135),0,BF
  269. 1350  LINE(200,65)-(200,135)
  270. 1355  LINE-(180,118)
  271. 1360  LINE-(180,83)
  272. 1365  LINE-(200,65)
  273. 1370  PAINT(190,99)
  274. 1375  LINE(200,135)-(180,118),0
  275. 1380  FOR K=1 TO 750:NEXT K
  276. 1385  LINE(140,30)-(180,47),0,BF
  277. 1390  LINE(140,47)-(180,47)
  278. 1395  LINE-(160,65)
  279. 1400  LINE-(140,47)
  280. 1405  PAINT(160,55)
  281. 1410  FOR K=1 TO 750:NEXT K
  282. 1415  LINE(120,47)-(200,65),0,BF
  283. 1420  LINE(120,65)-(140,82)
  284. 1425  LINE-(180,82)
  285. 1430  LINE-(200,65)
  286. 1435  LINE-(120,65)
  287. 1440  PAINT(160,75)
  288. 1445  LINE(120,65)-(140,82),0
  289. 1450  LINE(200,65)-(180,82),0
  290. 1455  FOR K=1 TO 750:NEXT K
  291. 1460  GOSUB 30000   '*** Textpad ***
  292. 1465  PRINT FNCEN$("Press <C> to continue.",40)
  293. 1470  A$=INKEY$:IF A$="" GOTO 1470
  294. 1475  IF A$="C" OR A$="c" GOTO 1485
  295. 1480  GOTO 1460
  296. 1485  GOSUB 30000   '*** <Textpad> ***
  297. 1490  PRINT FNCEN$("Our next two folds are to the back",40)
  298. 1495  FOR K=1 TO 1500:NEXT K
  299. 1500  GOSUB 30000   '*** <Textpad> ***
  300. 1505  PRINT FNCEN$("on the hidden side",40)
  301. 1510  FOR K=1 TO 1500:NEXT K
  302. 1515  GOSUB 30000   '*** <Textpad> ***
  303. 1520  PRINT FNCEN$("across these lines,",40)
  304. 1525  FOR K=1 TO 750:NEXT K
  305. 1530  FOR V=65 TO 135 STEP 2
  306. 1535  PSET(141,V),0
  307. 1540  PSET(179,V),0
  308. 1545  NEXT V
  309. 1550  FOR K=1 TO 750:NEXT K
  310. 1555  GOSUB 30000   '*** <Textpad> ***
  311. 1560  PRINT FNCEN$("SO!",40)
  312. 1565  FOR K=1 TO 750:NEXT K
  313. 1570  LINE(140,82)-(120,65)
  314. 1575  LINE(140,118)-(120,135)
  315. 1580  FOR H=120 TO 141
  316. 1585  LINE(141,82)-(H,65),0
  317. 1590  LINE(141,82)-(H,65)
  318. 1595  LINE(141,118)-(H,135),0
  319. 1600  LINE(141,118)-(H,135)
  320. 1605  LINE(H,65)-(H,135),0
  321. 1610  FOR M=1 TO 10:NEXT M
  322. 1615  NEXT H
  323. 1620  LINE(141,65)-(141,135)
  324. 1625  FOR K=1 TO 750:NEXT K
  325. 1630  LINE(180,82)-(200,65)
  326. 1635  LINE(180,118)-(200,135)
  327. 1640  FOR H=200 TO 179 STEP -1
  328. 1645  LINE(179,82)-(H,65),0
  329. 1650  LINE(179,82)-(H,65)
  330. 1655  LINE(179,118)-(H,135),0
  331. 1660  LINE(179,118)-(H,135)
  332. 1665  LINE(H,65)-(H,135),0
  333. 1670  FOR M=1 TO 10:NEXT M
  334. 1675  NEXT H
  335. 1680  LINE(179,65)-(179,135)
  336. 1685  FOR K=1 TO 750:NEXT K
  337. 1690  GOSUB 30000   '*** Textpad ***
  338. 1695  PRINT FNCEN$("Press <C> to continue.",40)
  339. 1700  A$=INKEY$:IF A$="" GOTO 1700
  340. 1705  IF A$="C" OR A$="c" GOTO 1715
  341. 1710  GOTO 1690
  342. 1715  GOSUB 30000   '*** <Textpad> ***
  343. 1720  PRINT FNCEN$("Now we need to turn our figure over",40)
  344. 1725  FOR K=1 TO 1500:NEXT K
  345. 1730  PRINT FNCEN$("to work on the hidden side.",40)
  346. 1735  FOR K=1 TO 1500:NEXT K
  347. 1740  GOSUB 30000   '*** Textpad ***
  348. 1745  PRINT FNCEN$("One moment, please.",40)
  349. 1750  FOR K=1 TO 1500:NEXT K
  350. 1755  FOR A=0 TO 20
  351. 1760  OUT 66,A:OUT 66,A
  352. 1765  OUT 97,(INP(97) OR 3)
  353. 1770  NEXT A
  354. 1775  SOUND 37,0
  355. 1780  CLS
  356. 1785  LINE(120,30)-(200,170),3,BF
  357. 1790  LINE(120,65)-(160,30),0
  358. 1795  LINE-(200,65),0
  359. 1800  LINE(120,135)-(160,170),0
  360. 1805  LINE-(200,135),0
  361. 1810  LINE(160,30)-(160,170),0
  362. 1815  FOR K=1 TO 750:NEXT K
  363. 1820  GOSUB 30000   '*** <Textpad> ***
  364. 1825  PRINT FNCEN$("We first fold the flap on the left side",40)
  365. 1830  FOR K=1 TO 750:NEXT K
  366. 1835  FOR K=1 TO 15
  367. 1840  LINE(160,30)-(120,65)
  368. 1845  LINE-(120,135)
  369. 1850  LINE-(160,170)
  370. 1855  FOR M=1 TO 25:NEXT M
  371. 1860  LINE(160,30)-(120,65),0
  372. 1865  LINE-(120,135),0
  373. 1870  LINE-(160,170),0
  374. 1875  NEXT K
  375. 1880  LINE(120,66)-(120,134)
  376. 1885  FOR K=1 TO 750:NEXT K
  377. 1890  GOSUB 30000   '*** <Textpad> ***
  378. 1895  PRINT FNCEN$("over to the right side,",40)
  379. 1900  FOR K=1 TO 750:NEXT K
  380. 1905  FOR K=1 TO 15
  381. 1910  LINE(160,30)-(200,65)
  382. 1915  LINE-(200,135)
  383. 1920  LINE-(160,170)
  384. 1925  FOR M=1 TO 25:NEXT M
  385. 1930  LINE(160,30)-(200,65),0
  386. 1935  LINE-(200,135),0
  387. 1940  LINE-(160,170),0
  388. 1945  NEXT K
  389. 1950  LINE(200,66)-(200,134)
  390. 1955  FOR K=1 TO 750:NEXT K
  391. 1960  GOSUB 30000   '*** <Textpad> ***
  392. 1965  PRINT FNCEN$("SO!",40)
  393. 1970  FOR K=1 TO 750:NEXT K
  394. 1975  FOR H=120 TO 160
  395. 1980  LINE(160,30)-(H,65),0
  396. 1985  LINE-(H,135),0
  397. 1990  LINE-(160,170),0
  398. 1995  LINE(120,30)-(120,170)
  399. 2000  NEXT H
  400. 2005  FOR V=30 TO 170 STEP 2
  401. 2010  PSET(160,V)
  402. 2015  NEXT V
  403. 2020  FOR H=163 TO 200
  404. 2025  LINE(160,30)-(H,65),0
  405. 2030  LINE-(H,135),0
  406. 2035  LINE-(160,170),0
  407. 2040  LINE(160,30)-(H,65)
  408. 2045  LINE-(H,135)
  409. 2050  LINE-(160,170)
  410. 2055  LINE(160,30)-(H,65),0
  411. 2060  LINE-(160,100),0
  412. 2065  LINE-(H,135),0
  413. 2070  LINE-(160,170),0
  414. 2075  LINE(161,45)-(162,85),0,BF
  415. 2080  LINE(161,115)-(162,155),0,BF
  416. 2085  PSET(160,32):PSET(160,34):PSET(160,96):PSET(160,98)
  417. 2090  PSET(160,102):PSET(160,104):PSET(160,166):PSET(160,168)
  418. 2095  NEXT H
  419. 2100  FOR K=1 TO 750:NEXT K
  420. 2105  GOSUB 30000   '*** Textpad ***
  421. 2110  PRINT FNCEN$("Press <C> to continue.",40)
  422. 2115  A$=INKEY$:IF A$="" GOTO 2115
  423. 2120  IF A$="C" OR A$="c" GOTO 2130
  424. 2125  GOTO 2105
  425. 2130  GOSUB 30000   '*** <Textpad> ***
  426. 2135  PRINT FNCEN$("and then fold this corner",40)
  427. 2140  FOR K=1 TO 750:NEXT K
  428. 2145  FOR K=1 TO 15
  429. 2150  PSET(115,25):DRAW"U8G3H6G2F6G3R8"
  430. 2155  PAINT(110,20)
  431. 2160  FOR M=1 TO 25:NEXT M
  432. 2165  CIRCLE(110,20),9,0
  433. 2170  PAINT(110,20),0
  434. 2175  NEXT K
  435. 2180  GOSUB 30000   '*** <Textpad> ***
  436. 2185  PRINT FNCEN$("in to this point,",40)
  437. 2190  FOR K=1 TO 750:NEXT K
  438. 2195  FOR K=1 TO 15
  439. 2200  CIRCLE(160,65),5
  440. 2205  LINE(158,65)-(162,65)
  441. 2210  LINE(160,63)-(160,67)
  442. 2215  FOR M=1 TO 25:NEXT M
  443. 2220  CIRCLE(160,65),5,0
  444. 2225  LINE(158,65)-(162,65),0
  445. 2230  LINE(160,63)-(160,67),0
  446. 2235  NEXT K
  447. 2240  PSET(160,64):PSET(160,66)
  448. 2245  PSET(160,134):PSET(160,136)
  449. 2250  GOSUB 30000   '*** <Textpad> ***
  450. 2255  PRINT FNCEN$("SO!",40)
  451. 2260  FOR K=1 TO 750:NEXT K
  452. 2265  FOR Q=0 TO 20
  453. 2270  LINE(120,65)-(120+Q,30+0.85*Q),0
  454. 2275  LINE-(160,30),0
  455. 2280  LINE(120,65)-(119+Q,30+0.85*Q),0
  456. 2285  LINE-(160,30),0
  457. 2290  FOR M=1 TO 10:NEXT M
  458. 2295  NEXT Q
  459. 2300  FOR Q=0 TO 20
  460. 2305  LINE(120,65)-(140+Q,47+0.9*Q)
  461. 2310  LINE-(160,30)
  462. 2315  LINE(120,65)-(139+Q,47+0.9*Q)
  463. 2320  LINE-(160,30)
  464. 2325  FOR M=1 TO 10:NEXT M
  465. 2330  NEXT Q
  466. 2335  LINE(160,30)-(120,65)
  467. 2340  FOR K=1 TO 750:NEXT K
  468. 2345  GOSUB 30000   '*** <Textpad> ***
  469. 2350  PRINT FNCEN$("and repeat with our lower corner",40)
  470. 2355  FOR K=1 TO 1500:NEXT K
  471. 2360  FOR Q=0 TO 20
  472. 2365  LINE(120,135)-(120+Q,170-0.85*Q),0
  473. 2370  LINE-(160,170),0
  474. 2375  LINE(120,135)-(119+Q,170-0.85*Q),0
  475. 2380  LINE-(160,170),0
  476. 2385  NEXT Q
  477. 2390  FOR Q=0 TO 20
  478. 2395  LINE(120,135)-(140+Q,153-0.9*Q)
  479. 2400  LINE-(160,170)
  480. 2405  LINE(120,135)-(141+Q,153-0.9*Q)
  481. 2410  LINE-(160,170)
  482. 2415  NEXT Q
  483. 2420  LINE(161,135)-(161,160),0
  484. 2425  LINE(160,170)-(120,135)
  485. 2430  FOR K=1 TO 750:NEXT K
  486. 2435  GOSUB 30000   '*** Textpad ***
  487. 2440  PRINT FNCEN$("Press <C> to continue.",40)
  488. 2445  A$=INKEY$:IF A$="" GOTO 2445
  489. 2450  IF A$="C" OR A$="c" GOTO 2460
  490. 2455  GOTO 2435
  491. 2460  GOSUB 30000   '*** <Textpad> ***
  492. 2465  PRINT FNCEN$("and then fold our flap back again",40)
  493. 2470  FOR K=1 TO 1500:NEXT K
  494. 2475  GOSUB 30000   '*** <Textpad> ***
  495. 2480  PRINT FNCEN$("to its original position,",40)
  496. 2485  FOR K=1 TO 1500:NEXT K
  497. 2490  GOSUB 30000   '*** <Textpad> ***
  498. 2495  PRINT FNCEN$("SO!",40)
  499. 2500  FOR K=1 TO 750:NEXT K
  500. 2505  FOR H=200 TO 160 STEP -1
  501. 2510  LINE(160,30)-(H,65)
  502. 2515  LINE-(160,100)
  503. 2520  LINE-(H,135)
  504. 2525  LINE-(160,170)
  505. 2530  LINE(160,30)-(200,65),0
  506. 2535  LINE(H,65)-(H,135),0
  507. 2540  LINE(H,65)-(H,135)
  508. 2545  LINE(160,170)-(200,135),0
  509. 2550  FOR M=1 TO 10:NEXT M
  510. 2555  NEXT H
  511. 2560  FOR H=160 TO 120 STEP -1
  512. 2565  LINE(160,30)-(H,65),0
  513. 2570  LINE-(H,135),0
  514. 2575  LINE-(160,170),0
  515. 2580  LINE(160,30)-(H,65)
  516. 2585  LINE-(H,135)
  517. 2590  LINE-(160,170)
  518. 2595  LINE(160,30)-(160,170),0
  519. 2600  FOR M=1 TO 10:NEXT M
  520. 2605  NEXT H
  521. 2610  GOSUB 30000
  522. 2615  PRINT FNCEN$("To see those folds again, press <R>.",40)
  523. 2620  FOR K=1 TO 1000:NEXT K
  524. 2625  PRINT FNCEN$("To continue, press <C>.",40)
  525. 2630  A$=INKEY$:IF A$="" GOTO 2630
  526. 2635  IF A$="r" OR A$="R" GOTO 2650
  527. 2640  IF A$="c" OR A$="C" GOTO 2715
  528. 2645  GOTO 2610
  529. 2650  FOR A=0 TO 20
  530. 2655  OUT 66,A:OUT 66,A
  531. 2660  OUT 97,(INP(97) OR 3)
  532. 2665  NEXT A
  533. 2670  SOUND 37,0
  534. 2675  LINE(120,30)-(159,65),3,BF
  535. 2680  LINE(120,135)-(159,170),3,BF
  536. 2685  LINE(160,30)-(120,65),0
  537. 2690  LINE(160,170)-(120,135),0
  538. 2695  GOSUB 30000
  539. 2700  PRINT FNCEN$("* Review *",40)
  540. 2705  FOR K=1 TO 1500:NEXT K
  541. 2710  GOTO 1820
  542. 2715  GOSUB 30000   '*** <Textpad> ***
  543. 2720  PRINT FNCEN$("Our next folds repeat that set of folds",40)
  544. 2725  FOR K=1 TO 1500:NEXT K
  545. 2730  GOSUB 30000   '*** <Textpad> ***
  546. 2735  PRINT FNCEN$("on the right side,",40)
  547. 2740  FOR K=1 TO 1500:NEXT K
  548. 2745  GOSUB 30000   '*** <Textpad> ***
  549. 2750  PRINT FNCEN$("SO!",40)
  550. 2755  FOR K=1 TO 750:NEXT K
  551. 2760  FOR H=200 TO 160 STEP -1
  552. 2765  LINE(160,30)-(H,65),0
  553. 2770  LINE-(H,135),0
  554. 2775  LINE-(160,170),0
  555. 2780  LINE(200,30)-(200,170)
  556. 2785  NEXT H
  557. 2790  FOR V=30 TO 170 STEP 2
  558. 2795  PSET(160,V)
  559. 2800  NEXT V
  560. 2805  FOR H=157 TO 120 STEP -1
  561. 2810  LINE(160,30)-(H,65),0
  562. 2815  LINE-(H,135),0
  563. 2820  LINE-(160,170),0
  564. 2825  LINE(160,30)-(H,65)
  565. 2830  LINE-(H,135)
  566. 2835  LINE-(160,170)
  567. 2840  LINE(160,30)-(H,65),0
  568. 2845  LINE-(160,100),0
  569. 2850  LINE-(H,135),0
  570. 2855  LINE-(160,170),0
  571. 2860  LINE(159,45)-(158,85),0,BF
  572. 2865  LINE(159,115)-(158,155),0,BF
  573. 2870  PSET(160,32):PSET(160,34):PSET(160,96):PSET(160,98)
  574. 2875  PSET(160,102):PSET(160,104):PSET(160,166):PSET(160,168)
  575. 2880  NEXT H
  576. 2885  LINE(124,61)-(157,32),0
  577. 2890  LINE(125,140)-(150,162),0
  578. 2895  LINE(129,56)-(146,41),0
  579. 2900  LINE(160,30)-(120,65)
  580. 2905  LINE(160,170)-(120,135)
  581. 2910  FOR K=1 TO 750:NEXT K
  582. 2915  GOSUB 30000   '*** Textpad ***
  583. 2920  PRINT FNCEN$("Press <C> to continue.",40)
  584. 2925  A$=INKEY$:IF A$="" GOTO 2925
  585. 2930  IF A$="C" OR A$="c" GOTO 2940
  586. 2935  GOTO 2915
  587. 2940  GOSUB 30000   '*** <Textpad> ***
  588. 2945  PRINT FNCEN$("Next, our corners",40)
  589. 2950  FOR K=1 TO 750:NEXT K
  590. 2955  FOR Q=0 TO 20
  591. 2960  LINE(200,65)-(200-Q,30+0.85*Q),0
  592. 2965  LINE-(160,30),0
  593. 2970  LINE(200,65)-(201-Q,30+0.85*Q),0
  594. 2975  LINE-(160,30),0
  595. 2980  FOR M=1 TO 10:NEXT M
  596. 2985  NEXT Q
  597. 2990  FOR Q=0 TO 20
  598. 2995  LINE(200,65)-(180-Q,47+0.9*Q)
  599. 3000  LINE-(160,30)
  600. 3005  LINE(200,65)-(181-Q,47+0.9*Q)
  601. 3010  LINE-(160,30)
  602. 3015  FOR M=1 TO 10:NEXT M
  603. 3020  NEXT Q
  604. 3025  LINE(160,30)-(200,65)
  605. 3030  FOR K=1 TO 750:NEXT K
  606. 3035  FOR Q=0 TO 20
  607. 3040  LINE(200,135)-(200-Q,170-0.85*Q),0
  608. 3045  LINE-(160,170),0
  609. 3050  LINE(200,135)-(201-Q,170-0.85*Q),0
  610. 3055  LINE-(160,170),0
  611. 3060  NEXT Q
  612. 3065  FOR Q=0 TO 20
  613. 3070  LINE(200,135)-(180-Q,153-0.9*Q)
  614. 3075  LINE-(160,170)
  615. 3080  LINE(200,135)-(181-Q,153-0.9*Q)
  616. 3085  LINE-(160,170)
  617. 3090  NEXT Q
  618. 3095  LINE(159,135)-(159,160),0
  619. 3100  LINE(160,170)-(200,135)
  620. 3105  FOR K=1 TO 750:NEXT K
  621. 3110  GOSUB 30000
  622. 3115  PRINT FNCEN$("Press <C> to continue.",40)
  623. 3120  A$=INKEY$:IF A$="" GOTO 3120
  624. 3125  IF A$="C" OR A$="c" GOTO 3135
  625. 3130  GOTO 3110
  626. 3135  GOSUB 30000   '*** <Textpad> ***
  627. 3140  PRINT FNCEN$("and finally our flap back again",40)
  628. 3145  FOR K=1 TO 1500:NEXT K
  629. 3150  GOSUB 30000   '*** <Textpad> ***
  630. 3155  PRINT FNCEN$("to the right,",40)
  631. 3160  FOR K=1 TO 1500:NEXT K
  632. 3165  GOSUB 30000   '*** <Textpad> ***
  633. 3170  PRINT FNCEN$("SO!",40)
  634. 3175  FOR K=1 TO 750:NEXT K
  635. 3180  FOR H=120 TO 160
  636. 3185  LINE(160,30)-(H,65)
  637. 3190  LINE-(160,100)
  638. 3195  LINE-(H,135)
  639. 3200  LINE-(160,170)
  640. 3205  LINE(160,30)-(120,65),0
  641. 3210  LINE(H,65)-(H,135),0
  642. 3215  LINE(H,65)-(H,135)
  643. 3220  LINE(160,170)-(120,135),0
  644. 3225  FOR M=1 TO 10:NEXT M
  645. 3230  NEXT H
  646. 3235  FOR H=160 TO 200
  647. 3240  LINE(160,30)-(H,65),0
  648. 3245  LINE-(H,135),0
  649. 3250  LINE-(160,170),0
  650. 3255  LINE(160,30)-(H,65)
  651. 3260  LINE-(H,135)
  652. 3265  LINE-(160,170)
  653. 3270  LINE(160,30)-(160,170),0
  654. 3275  FOR M=1 TO 10:NEXT M
  655. 3280  NEXT H
  656. 3285  LINE(160,30)-(200,65),0
  657. 3290  LINE-(200,135),0
  658. 3295  LINE-(160,170),0
  659. 3300  LINE(160,29)-(201,65),0
  660. 3305  LINE(160,171)-(201,135),0
  661. 3310  PSET(179,45),0:PSET(180,46),0
  662. 3315  PSET(179,155),0:PSET(180,154),0
  663. 3320  FOR K=1 TO 750:NEXT K
  664. 3325  GOSUB 30000
  665. 3330  PRINT FNCEN$("Would you like to see those folds again?",40)
  666. 3335  FOR K=1 TO 1500:NEXT K
  667. 3340  GOSUB 30000
  668. 3345  PRINT FNCEN$("If so, press <R>.",40)
  669. 3350  FOR K=1 TO 1000:NEXT K
  670. 3355  PRINT FNCEN$("To continue, press <C>.",40)
  671. 3360  A$=INKEY$:IF A$="" GOTO 3360
  672. 3365  IF A$="r" OR A$="R" GOTO 3380
  673. 3370  IF A$="c" OR A$="C" GOTO 3440
  674. 3375  GOTO 3340
  675. 3380  FOR A=0 TO 20
  676. 3385  OUT 66,A:OUT 66,A
  677. 3390  OUT 97,(INP(97) OR 3)
  678. 3395  NEXT A
  679. 3400  SOUND 37,0
  680. 3405  LINE(161,30)-(200,170),3,BF
  681. 3410  LINE(160,30)-(200,65),0
  682. 3415  LINE(160,170)-(200,135),0
  683. 3420  GOSUB 30000
  684. 3425  PRINT FNCEN$("* Review *",40)
  685. 3430  FOR K=1 TO 1500:NEXT K
  686. 3435  GOTO 2715
  687. 3440  GOSUB 30000   '*** <Textpad> ***
  688. 3445  PRINT FNCEN$("Now, we are at a crossroads.",40)
  689. 3450  FOR K=1 TO 1500:NEXT K
  690. 3455  GOSUB 30000
  691. 3460  PRINT FNCEN$("For Box A, press <A>.",40)
  692. 3465  FOR K=1 TO 1000:NEXT K
  693. 3470  PRINT FNCEN$("For Box B, press <B>.",40)
  694. 3475  A$=INKEY$:IF A$="" GOTO 3475
  695. 3480  IF A$="a" OR A$="A" GOTO 3495
  696. 3485  IF A$="b" OR A$="B" GOTO 4515
  697. 3490  GOTO 3455
  698. 3495  GOSUB 30000   '*** <Textpad> ***
  699. 3500  PRINT FNCEN$("* Box A *",40)
  700. 3505  FOR K=1 TO 1500:NEXT K
  701. 3510  GOSUB 30000   '*** <Textpad> ***
  702. 3515  PRINT FNCEN$("We fold and backfold this corner",40)
  703. 3520  FOR K=1 TO 750:NEXT K
  704. 3525  FOR K=1 TO 15
  705. 3530  PSET(160,22):DRAW"E5L4U7L2D7L4F5"
  706. 3535  PAINT(160,16)
  707. 3540  FOR M=1 TO 25:NEXT M
  708. 3545  CIRCLE(160,16),7,0
  709. 3550  PAINT(160,16),0
  710. 3555  NEXT K
  711. 3560  FOR K=1 TO 750:NEXT K
  712. 3565  GOSUB 30000   '*** <Textpad> ***
  713. 3570  PRINT FNCEN$("down across this line,",40)
  714. 3575  FOR K=1 TO 750:NEXT K
  715. 3580  FOR H=120 TO 200 STEP 2
  716. 3585  PSET(H,65),0
  717. 3590  NEXT H
  718. 3595  FOR K=1 TO 750:NEXT K
  719. 3600  GOSUB 30000   '*** <Textpad> ***
  720. 3605  PRINT FNCEN$("SO!",40)
  721. 3610  FOR K=1 TO 750:NEXT K
  722. 3615  LINE(163,32)-(196,61),0
  723. 3620  FOR V=30 TO 65
  724. 3625  LINE(120,65)-(160,V),0
  725. 3630  LINE-(200,65),0
  726. 3635  NEXT V
  727. 3640  FOR V=65 TO 100
  728. 3645  LINE(120,65)-(160,V),0
  729. 3650  LINE-(200,65),0
  730. 3655  LINE(120,65)-(160,V)
  731. 3660  LINE-(200,65)
  732. 3665  NEXT V
  733. 3670  LINE(120,65)-(160,100),0
  734. 3675  LINE-(200,65),0
  735. 3680  FOR K=1 TO 750:NEXT K
  736. 3685  GOSUB 30000   '*** Textpad ***
  737. 3690  PRINT FNCEN$("Press <C> to continue.",40)
  738. 3695  A$=INKEY$:IF A$="" GOTO 3695
  739. 3700  IF A$="C" OR A$="c" GOTO 3710
  740. 3705  GOTO 3685
  741. 3710  GOSUB 30000   '*** <Textpad> ***
  742. 3715  PRINT FNCEN$("and back up again!",40)
  743. 3720  FOR K=1 TO 750:NEXT K
  744. 3725  FOR V=100 TO 65 STEP -1
  745. 3730  LINE(120,65)-(160,V),0
  746. 3735  LINE-(200,65),0
  747. 3740  LINE(120,65)-(160,V)
  748. 3745  LINE-(200,65)
  749. 3750  PSET(160,V),0
  750. 3755  NEXT V
  751. 3760  FOR H=120 TO 200 STEP 2
  752. 3765  PSET(H,65),0
  753. 3770  NEXT H
  754. 3775  FOR V=60 TO 30 STEP -1
  755. 3780  LINE(120,65)-(160,V)
  756. 3785  LINE-(200,65)
  757. 3790  LINE(132,60)-(188,64),3,BF
  758. 3795  LINE(160,60)-(160,64),0
  759. 3800  PSET(160,V),0
  760. 3805  NEXT V
  761. 3810  FOR H=120 TO 200 STEP 2
  762. 3815  PSET(H,65),0
  763. 3820  NEXT H
  764. 3825  FOR K=1 TO 750:NEXT K
  765. 3830  GOSUB 30000   '*** <Textpad> ***
  766. 3835  PRINT FNCEN$("and fold this lower corner",40)
  767. 3840  FOR K=1 TO 750:NEXT K
  768. 3845  FOR K=1 TO 15
  769. 3850  PSET(160,178):DRAW"G5R4D7R2U7R4H5"
  770. 3855  PAINT(160,184)
  771. 3860  FOR M=1 TO 25:NEXT M
  772. 3865  CIRCLE(160,184),7,0
  773. 3870  PAINT(160,184),0
  774. 3875  NEXT K
  775. 3880  FOR K=1 TO 750:NEXT K
  776. 3885  GOSUB 30000   '*** <Textpad> ***
  777. 3890  PRINT FNCEN$("up across this line,",40)
  778. 3895  FOR K=1 TO 750:NEXT K
  779. 3900  FOR H=120 TO 200 STEP 2
  780. 3905  PSET(H,135),0
  781. 3910  NEXT H
  782. 3915  FOR K=1 TO 750:NEXT K
  783. 3920  GOSUB 30000   '*** <Textpad> ***
  784. 3925  PRINT FNCEN$("SO!",40)
  785. 3930  FOR K=1 TO 750:NEXT K
  786. 3935  FOR V=170 TO 135 STEP -1
  787. 3940  LINE(120,135)-(160,V),0
  788. 3945  LINE-(200,135),0
  789. 3950  NEXT V
  790. 3955  FOR V=135 TO 100 STEP -1
  791. 3960  LINE(120,135)-(160,V),0
  792. 3965  LINE-(200,135),0
  793. 3970  LINE(120,135)-(160,V)
  794. 3975  LINE-(200,135)
  795. 3980  NEXT V
  796. 3985  LINE(120,135)-(160,100),0
  797. 3990  LINE-(200,135),0
  798. 3995  FOR K=1 TO 750:NEXT K
  799. 4000  GOSUB 30000   '*** Textpad ***
  800. 4005  PRINT FNCEN$("Press <C> to continue.",40)
  801. 4010  A$=INKEY$:IF A$="" GOTO 4010
  802. 4015  IF A$="C" OR A$="c" GOTO 4025
  803. 4020  GOTO 4000
  804. 4025  GOSUB 30000   '*** <Textpad> ***
  805. 4030  PRINT FNCEN$("and back down again!",40)
  806. 4035  FOR K=1 TO 750:NEXT K
  807. 4040  FOR V=100 TO 135
  808. 4045  LINE(120,135)-(160,V),0
  809. 4050  LINE-(200,135),0
  810. 4055  LINE(120,135)-(160,V)
  811. 4060  LINE-(200,135)
  812. 4065  PSET(160,V),0
  813. 4070  NEXT V
  814. 4075  FOR H=120 TO 200 STEP 2
  815. 4080  PSET(H,135),0
  816. 4085  NEXT H
  817. 4090  FOR V=140 TO 170
  818. 4095  LINE(120,135)-(160,V)
  819. 4100  LINE-(200,135)
  820. 4105  LINE(132,136)-(188,139),3,BF
  821. 4110  LINE(160,136)-(160,139),0
  822. 4115  PSET(160,V),0
  823. 4120  NEXT V
  824. 4125  FOR H=120 TO 200 STEP 2
  825. 4130  PSET(H,135),0
  826. 4135  NEXT H
  827. 4140  FOR K=1 TO 750:NEXT K
  828. 4145  GOSUB 30000   '*** Textpad ***
  829. 4150  PRINT FNCEN$("Press <C> to continue.",40)
  830. 4155  A$=INKEY$:IF A$="" GOTO 4155
  831. 4160  IF A$="C" OR A$="c" GOTO 4170
  832. 4165  GOTO 4145
  833. 4170  GOSUB 30000   '*** <Textpad> ***
  834. 4175  PRINT FNCEN$("Our final task is to open up our figure,",40)
  835. 4180  FOR K=1 TO 1500:NEXT K
  836. 4185  GOSUB 30000   '*** <Textpad> ***
  837. 4190  PRINT FNCEN$("SO!",40)
  838. 4195  FOR K=1 TO 750:NEXT K
  839. 4200  FOR Q=0 TO 40
  840. 4205  LINE(160,30+0.88*Q)-(160-Q,65),0
  841. 4210  LINE-(160-Q,135),0
  842. 4215  LINE-(160,170-0.88*Q),0
  843. 4220  LINE(160,30+0.88*Q)-(160+Q,65),0
  844. 4225  LINE-(160+Q,135),0
  845. 4230  LINE-(160,170-0.88*Q),0
  846. 4235  LINE(160,30+0.88*Q)-(160-Q,65)
  847. 4240  LINE-(160-Q,135)
  848. 4245  LINE-(160,170-0.88*Q)
  849. 4250  LINE(160,30+0.88*Q)-(160+Q,65)
  850. 4255  LINE-(160+Q,135)
  851. 4260  LINE-(160,170-0.88*Q)
  852. 4265  LINE(120,65)-(160,30+0.88*Q),0
  853. 4270  LINE-(200,65),0
  854. 4275  LINE(120,135)-(160,170-0.88*Q),0
  855. 4280  LINE-(200,135),0
  856. 4285  NEXT Q
  857. 4290  FOR A=0 TO 20
  858. 4295  OUT 66,A:OUT 66,A
  859. 4300  OUT 97,(INP(97) OR 3)
  860. 4305  NEXT A
  861. 4310  SOUND 37,0
  862. 4315  CLS
  863. 4320  LINE(180,145)-(215,95)
  864. 4325  LINE-(215,70)
  865. 4330  LINE-(145,50)
  866. 4335  LINE-(110,95)
  867. 4340  LINE-(110,120)
  868. 4345  LINE-(180,145)
  869. 4350  PAINT(160,100)
  870. 4355  LINE(110,95)-(180,120),0
  871. 4360  LINE-(215,70),0
  872. 4365  LINE(110,120)-(145,107),0
  873. 4370  LINE-(180,145),0
  874. 4375  LINE-(180,120),0
  875. 4380  LINE(125,100)-(145,75),0
  876. 4385  LINE-(200,90),0
  877. 4390  LINE(145,50)-(145,75),0
  878. 4395  LINE-(180,60),0
  879. 4400  LINE-(205,84),0
  880. 4405  FOR K=1 TO 750:NEXT K
  881. 4410  GOSUB 30000   '*** <Textpad> ***
  882. 4415  PRINT FNCEN$("And there we have it!  ",40)
  883. 4420  FOR K=1 TO 1500:NEXT K
  884. 4425  GOSUB 30000   '*** <Textpad> ***
  885. 4430  PRINT FNCEN$("BOX A",40)
  886. 4435  FOR K=1 TO 1500:NEXT K
  887. 4440  GOSUB 30000                '*** Textpad ***
  888. 4445  PRINT FNCEN$("  Press <1> - To return to MAIN MENU.",40)
  889. 4450  PRINT FNCEN$("      <2> - To repeat TWO BOXES.",40)
  890. 4455  PRINT FNCEN$("      <3> - To exit from program.",40)
  891. 4460  E$=INPUT$(1)
  892. 4465  IF E$<"1" OR E$>"3" GOTO 4465
  893. 4470  SEL=VAL(E$)
  894. 4475  COMMON SEL
  895. 4480  CLS
  896. 4485  LOCATE 13,1:PRINT FNCEN$("One moment, please.",40)
  897. 4490  ON SEL GOTO 4495,4500,4505
  898. 4495  CHAIN"a:main"
  899. 4500  CHAIN"a:boxes
  900. 4505  CHAIN"a:end"
  901. 4510  END
  902. 4515  GOSUB 30000   '*** <Textpad> ***
  903. 4520  PRINT FNCEN$("* Box B *",40)
  904. 4525  FOR K=1 TO 1500:NEXT K
  905. 4530  GOSUB 30000   '*** <Textpad> ***
  906. 4535  PRINT FNCEN$("For this box, we fold open our figure,",40)
  907. 4540  FOR K=1 TO 1500:NEXT K
  908. 4545  GOSUB 30000   '*** <Textpad> ***
  909. 4550  PRINT FNCEN$("in such a way that the flaps here",40)
  910. 4555  FOR K=1 TO 750:NEXT K
  911. 4560  FOR K=1 TO 15
  912. 4565  CIRCLE(160,100),5,0
  913. 4570  LINE(158,100)-(162,100),0
  914. 4575  LINE(160,98)-(160,102),0
  915. 4580  FOR M=1 TO 25:NEXT M
  916. 4585  CIRCLE(160,100),5
  917. 4590  LINE(158,100)-(162,100)
  918. 4595  LINE(160,98)-(160,102)
  919. 4600  NEXT K
  920. 4605  LINE(160,95)-(160,105),0
  921. 4610  FOR K=1 TO 750:NEXT K
  922. 4615  GOSUB 30000   '*** <Textpad> ***
  923. 4620  PRINT FNCEN$("become corners here",40)
  924. 4625  FOR K=1 TO 750:NEXT K
  925. 4630  FOR K=1 TO 15
  926. 4635  CIRCLE(80,100),5
  927. 4640  LINE(78,100)-(82,100)
  928. 4645  LINE(80,98)-(80,102)
  929. 4650  CIRCLE(240,100),5
  930. 4655  LINE(238,100)-(242,100)
  931. 4660  LINE(240,98)-(240,102)
  932. 4665  CIRCLE(80,100),5,0
  933. 4670  LINE(78,100)-(82,100),0
  934. 4675  LINE(80,98)-(80,102),0
  935. 4680  CIRCLE(240,100),5,0
  936. 4685  LINE(238,100)-(242,100),0
  937. 4690  LINE(240,98)-(240,102),0
  938. 4695  NEXT K
  939. 4700  FOR K=1 TO 750:NEXT K
  940. 4705  GOSUB 30000   '*** <Textpad> ***
  941. 4710  PRINT FNCEN$("and these corners",40)
  942. 4715  FOR K=1 TO 750:NEXT K
  943. 4720  FOR K=1 TO 15
  944. 4725  PSET(160,22):DRAW"E5L4U7L2D7L4F5"
  945. 4730  PAINT(160,16)
  946. 4735  PSET(160,178):DRAW"G5R4D7R2U7R4H5"
  947. 4740  PAINT(160,184)
  948. 4745  CIRCLE(160,16),7,0
  949. 4750  PAINT(160,16),0
  950. 4755  CIRCLE(160,184),7,0
  951. 4760  PAINT(160,184),0
  952. 4765  NEXT K
  953. 4770  FOR K=1 TO 750:NEXT K
  954. 4775  GOSUB 30000   '*** <Textpad> ***
  955. 4780  PRINT FNCEN$("come together here,",40)
  956. 4785  FOR K=1 TO 750:NEXT K
  957. 4790  FOR K=1 TO 15
  958. 4795  CIRCLE(160,100),5,0
  959. 4800  LINE(158,100)-(162,100),0
  960. 4805  LINE(160,98)-(160,102),0
  961. 4810  FOR M=1 TO 25:NEXT M
  962. 4815  CIRCLE(160,100),5
  963. 4820  LINE(158,100)-(162,100)
  964. 4825  LINE(160,98)-(160,102)
  965. 4830  NEXT K
  966. 4835  LINE(160,95)-(160,105),0
  967. 4840  FOR K=1 TO 750:NEXT K
  968. 4845  GOSUB 30000   '*** <Textpad> ***
  969. 4850  PRINT FNCEN$("SO!",40)
  970. 4855  FOR K=1 TO 750:NEXT K
  971. 4860  FOR Q=0 TO 40
  972. 4865  LINE(160,30+0.25*Q)-(160-Q,100),0
  973. 4870  LINE-(160,170-0.25*Q),0
  974. 4875  LINE(160,30+0.25*Q)-(160+Q,100),0
  975. 4880  LINE-(160,170-0.25*Q),0
  976. 4885  LINE(160,30+0.25*Q)-(160-Q,100)
  977. 4890  LINE-(160,170-0.25*Q)
  978. 4895  LINE(160,30+0.25*Q)-(160+Q,100)
  979. 4900  LINE-(160,170-0.25*Q)
  980. 4905  LINE(120,65)-(160,30+0.25*Q),0
  981. 4910  LINE-(200,65),0
  982. 4915  LINE(120,135)-(160,170-0.25*Q),0
  983. 4920  LINE-(200,135),0
  984. 4925  NEXT Q
  985. 4930  FOR Q=0 TO 30
  986. 4935  LINE(160,40+0.83*Q)-(120-Q,100),0
  987. 4940  LINE-(160,160-0.83*Q),0
  988. 4945  LINE(160,40+0.83*Q)-(200+Q,100),0
  989. 4950  LINE-(160,160-0.83*Q),0
  990. 4955  LINE(160,40+0.83*Q)-(120-Q,100)
  991. 4960  LINE-(160,160-0.83*Q)
  992. 4965  LINE(160,40+0.83*Q)-(200+Q,100)
  993. 4970  LINE-(160,160-0.83*Q)
  994. 4975  LINE(120,65)-(160,40+0.83*Q),0
  995. 4980  LINE-(200,65),0
  996. 4985  LINE(120,135)-(160,160-0.83*Q),0
  997. 4990  LINE-(200,135),0
  998. 4995  LINE(120,65)-(120-Q,100)
  999. 5000  LINE-(120,135)
  1000. 5005  LINE(200,65)-(200+Q,100)
  1001. 5010  LINE-(200,135)
  1002. 5015  NEXT Q
  1003. 5020  FOR Q=0 TO 35
  1004. 5025  LINE(160,65+Q)-(90-0.29*Q,100),0
  1005. 5030  LINE-(160,135-Q),0
  1006. 5035  LINE(160,65+Q)-(230+0.29*Q,100),0
  1007. 5040  LINE-(160,135-Q),0
  1008. 5045  LINE(160,65+Q)-(90-0.29*Q,100)
  1009. 5050  LINE-(160,135-Q)
  1010. 5055  LINE(160,65+Q)-(230+0.29*Q,100)
  1011. 5060  LINE-(160,135-Q)
  1012. 5065  LINE(120,65)-(90-0.29*Q,100)
  1013. 5070  LINE-(120,135)
  1014. 5075  LINE(200,65)-(230+0.29*Q,100)
  1015. 5080  LINE-(200,135)
  1016. 5085  LINE(120,65)-(200,65)
  1017. 5090  LINE(120,135)-(200,135)
  1018. 5095  NEXT Q
  1019. 5100  LINE(80,100)-(240,100),0
  1020. 5105  LINE(120,65)-(200,135),0
  1021. 5110  LINE(120,135)-(200,65),0
  1022. 5115  FOR K=1 TO 750:NEXT K
  1023. 5120  GOSUB 30000   '*** <Textpad> ***
  1024. 5125  PRINT FNCEN$("There!  That completes our folds.",40)
  1025. 5130  FOR K=1 TO 1500:NEXT K
  1026. 5135  GOSUB 30000   '*** <Textpad> ***
  1027. 5140  PRINT FNCEN$("Would you like a review of those folds",40)
  1028. 5145  FOR K=1 TO 1000:NEXT K
  1029. 5150  PRINT FNCEN$("before we open up?",40)
  1030. 5155  FOR K=1 TO 1500:NEXT K
  1031. 5160  GOSUB 30000
  1032. 5165  PRINT FNCEN$("If so, press <R> to review.",40)
  1033. 5170  FOR K=1 TO 1000:NEXT K
  1034. 5175  PRINT FNCEN$("Press <C> to continue.",40)
  1035. 5180  A$=INKEY$:IF A$="" GOTO 5180
  1036. 5185  IF A$="r" OR A$="R" GOTO 5200
  1037. 5190  IF A$="c" OR A$="C" GOTO 5290
  1038. 5195  GOTO 5160
  1039. 5200  FOR A=0 TO 20
  1040. 5205  OUT 66,A:OUT 66,A
  1041. 5210  OUT 97,(INP(97) OR 3)
  1042. 5215  NEXT A
  1043. 5220  SOUND 37,0
  1044. 5225  CLS
  1045. 5230  LINE(160,30)-(120,65)
  1046. 5235  LINE-(120,135)
  1047. 5240  LINE-(160,170)
  1048. 5245  LINE-(200,135)
  1049. 5250  LINE-(200,65)
  1050. 5255  LINE-(160,30)
  1051. 5260  PAINT(160,100)
  1052. 5265  LINE(160,30)-(160,170),0
  1053. 5270  GOSUB 30000
  1054. 5275  PRINT FNCEN$("* Review *",40)
  1055. 5280  FOR K=1 TO 1500:NEXT K
  1056. 5285  GOTO 4515
  1057. 5290  GOSUB 30000   '*** <Textpad> ***
  1058. 5295  PRINT FNCEN$("OK!  Let's open up!",40)
  1059. 5300  FOR K=1 TO 1500:NEXT K
  1060. 5305  FOR A=0 TO 20
  1061. 5310  OUT 66,A:OUT 66,A
  1062. 5315  OUT 97,(INP(97) OR 3)
  1063. 5320  NEXT A
  1064. 5325  SOUND 37,0
  1065. 5330  CLS
  1066. 5335  LINE(160,50)-(120,65)
  1067. 5340  LINE-(105,100)
  1068. 5345  LINE-(120,135)
  1069. 5350  LINE-(160,150)
  1070. 5355  LINE-(200,135)
  1071. 5360  LINE-(215,100)
  1072. 5365  LINE-(200,65)
  1073. 5370  LINE-(160,50)
  1074. 5375  PAINT(160,100)
  1075. 5380  LINE(160,50)-(105,100),0
  1076. 5385  LINE-(160,150),0
  1077. 5390  LINE-(215,100),0
  1078. 5395  LINE-(160,50),0
  1079. 5400  LINE(121,85)-(121,115),0
  1080. 5405  LINE(199,85)-(199,115),0
  1081. 5410  LINE(145,65)-(175,65),0
  1082. 5415  LINE(145,135)-(175,135),0
  1083. 5420  FOR K=1 TO 750:NEXT K
  1084. 5425  GOSUB 30000   '*** <Textpad> ***
  1085. 5430  PRINT FNCEN$("And there we have it!",40)
  1086. 5435  FOR K=1 TO 1500:NEXT K
  1087. 5440  GOSUB 30000   '*** <Textpad> ***
  1088. 5445  PRINT FNCEN$("BOX B",40)
  1089. 5450  FOR K=1 TO 1500:NEXT K
  1090. 5455  GOSUB 30000                '*** Textpad ***
  1091. 5460  PRINT FNCEN$("  Press <1> - To return to MAIN MENU.",40)
  1092. 5465  PRINT FNCEN$("      <2> - To repeat TWO BOXES.",40)
  1093. 5470  PRINT FNCEN$("      <3> - To exit from program.",40)
  1094. 5475  E$=INPUT$(1)
  1095. 5480  IF E$<"1" OR E$>"3" GOTO 5480
  1096. 5485  SEL=VAL(E$)
  1097. 5490  COMMON SEL
  1098. 5495  CLS
  1099. 5500  LOCATE 13,1:PRINT FNCEN$("One moment, please.",40)
  1100. 5501  LINE(70,75)-(250,125),3,B
  1101. 5505  ON SEL GOTO 5510,5515,5520
  1102. 5510  CHAIN"a:main"
  1103. 5515  CHAIN"a:boxes
  1104. 5520  CHAIN"a:end"
  1105. 30000  LOCATE 1,1
  1106. 30010  PRINT"                                                                                                                        "
  1107. 30020  LOCATE 1,1:RETURN
  1108.